package com.huluobo.a2111douyindemo.demo;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.widget.ImageView;

import com.huluobo.a2111douyindemo.R;

/**
 * 事件分发机制(TouchEvent)
 * dispatchTouchEvent(分发) 控制一个事件是否可以向下传递,并且不消耗掉事件
 * onTouchEvent(消费) 控制一个事件是否被消耗掉,不再向下传递
 * onInterceptTouchEvent(拦截) 控制一个事件是否向下传递,但是不影响事件的返回,只有Layout才有
 * 一个事件传递的过程是从Activity中岛Layout,再到View,再从View中返回到Layout,最后到Activity
 * 如果想不起来,想想爷爷爸爸孩子和苹果的例子
 */

public class DemoActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_demo);
    }

    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        Log.i("TagA", "activity的分发事件" + ev.getAction());
        return super.dispatchTouchEvent(ev);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        Log.i("TagA", "activity的消费事件:" + event.getAction());
        return super.onTouchEvent(event);
    }
}